﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using STT.Business;
using STT.Entities;

namespace STT.Admin.UserControls
{
    public partial class ucGiangVien_NgoaiNgu : System.Web.UI.UserControl
    {
        public bool chonSuaClick;
        protected void Page_Load(object sender, EventArgs e)
        {
            LoadGiangVienNN();
            Loanddl();
            btSua.Visible = false;
            btThemMoi.Visible = true;
        }
        void Loanddl()
        {
            ddGiangVien.DataSource = BTbGiangVien.SelectAll();
            ddNgoaiNgu.DataSource = BTbNgoaiNgu.SelectAll();
       

            ddNgoaiNgu.DataTextField = "TenNgoaiNgu";
            ddGiangVien.DataTextField = "TenGV";

            ddGiangVien.DataValueField = "MaGV";
            ddNgoaiNgu.DataValueField = "MaNgoaiNgu";

            ddGiangVien.DataBind();
            ddNgoaiNgu.DataBind();
           
        }
        void LoadGiangVienNN()
        {
            gvGiangVienNgoaiNgu.AutoGenerateColumns = false;
            gvGiangVienNgoaiNgu.DataSource = BTbGiangVien_NgoaiNgu.SelectAll();
            gvGiangVienNgoaiNgu.DataBind();
        }
       
        void ThongBao(string Loi)
        {
            ScriptManager.RegisterClientScriptBlock(this, GetType(), "Thông báo!", "<script>alert('" + Loi + "')</script>", false);
        }
        protected void gvGiangVienNgoaiNgu_RowEditing(object sender, GridViewEditEventArgs e)
        {
            gvGiangVienNgoaiNgu.EditIndex = e.NewEditIndex;
            gvGiangVienNgoaiNgu.DataBind();
        }
        protected void btImport_Click(object sender, EventArgs e)
        {

        }
        protected void btThemExcel_Click(object sender, EventArgs e)
        {

        }

        protected void gvGiangVienNgoaiNgu_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            try
            {
                int MaGV = int.Parse(gvGiangVienNgoaiNgu.DataKeys[e.RowIndex].Values[0].ToString());
                int MaNgoaiNgu = int.Parse(gvGiangVienNgoaiNgu.DataKeys[e.RowIndex].Values[1].ToString());

                BTbGiangVien_NgoaiNgu.Delete(MaGV,MaNgoaiNgu);
                LoadGiangVienNN();
            }
            catch
            {
                ThongBao("Dữ liệu liên quan đến Khóa học này vẫn tồn tại, vui lòng kiểm tra lại dữ liệu!");
            }
        }

        protected void gvGiangVienNgoaiNgu_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
        {
            gvGiangVienNgoaiNgu.EditIndex = -1;
            gvGiangVienNgoaiNgu.DataBind();
        }

        protected void btThemMoi_Click(object sender, EventArgs e)
        {
           
                BTbGiangVien_NgoaiNgu.Insert(new ETbGiangVien_NgoaiNgu
                {
                    MaGV=Int32.Parse(ddGiangVien.SelectedValue),
                    MaNgoaiNgu=Int32.Parse(ddNgoaiNgu.SelectedValue),
                    NgayCap=DateTime.Parse(txtNgayCap.Text),
                    NoiCap= txtNoiCap.Text



                });

                LoadGiangVienNN();
          
        }

        protected void lbXuatDuLieu_Click(object sender, EventArgs e)
        {

        }

        protected void lbXoaTat_Click(object sender, EventArgs e)
        {
            try
            {
                for (int i = 0; i < gvGiangVienNgoaiNgu.Rows.Count; i++)
                {
                    CheckBox cbChon = (CheckBox)gvGiangVienNgoaiNgu.Rows[i].Cells[0].FindControl("cbChon");
                    if (cbChon != null && cbChon.Checked)
                    {
                        BTbGiangVien.Delete(int.Parse(gvGiangVienNgoaiNgu.DataKeys[i].Value.ToString()));
                    }
                }

                LoadGiangVienNN();
            }
            catch
            {
                ThongBao("Dữ liệu liên quan đến Khóa học này vẫn tồn tại, vui lòng kiểm tra lại dữ liệu!");
            }
        }

        // Phân trang
        protected void gvGiangVienNgoaiNgu_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            Loanddl();
            gvGiangVienNgoaiNgu.PageIndex = e.NewPageIndex;
            gvGiangVienNgoaiNgu.DataBind();
        }

    

        protected void btSua_Click(object sender, EventArgs e)
        {
            Loanddl();
            BTbGiangVien_NgoaiNgu.Update(new ETbGiangVien_NgoaiNgu
            {
                MaGV = Int32.Parse(ddGiangVien.Text),
                MaNgoaiNgu = Int32.Parse(ddNgoaiNgu.Text),
                NgayCap = DateTime.Parse(txtNgayCap.Text),
                NoiCap = txtNoiCap.Text

            });
            LoadGiangVienNN();
        }

        protected void btSearch_Click(object sender, ImageClickEventArgs e)
        {
            Loanddl();
            BTbGiangVien_NgoaiNgu.SearchTenGiangVienNN(new ETbGiangVien_NgoaiNgu
            {
                MaGV = Int32.Parse(txtTimKiem.Text)
            });
            LoadGiangVienNN();
        }

        protected void gvGiangVienNgoaiNgu_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "ChonSua")
            {
                int index = Convert.ToInt32(e.CommandArgument);

                // Thay đổi tiêu đề
                txtTieuDe.InnerText = "Sửa khóa học";
                ddGiangVien.Text = gvGiangVienNgoaiNgu.Rows[index].Cells[2].Text;
                ddNgoaiNgu.Text = gvGiangVienNgoaiNgu.Rows[index].Cells[3].Text;
                txtNgayCap.Text = gvGiangVienNgoaiNgu.Rows[index].Cells[4].Text;
                txtNoiCap.Text = gvGiangVienNgoaiNgu.Rows[index].Cells[5].Text;

                btSua.Visible = true;
                btThemMoi.Visible = false;
                chonSuaClick = true;
            }
        }

     
 
    }
}